

datum.spaced {
    margin-right: 30px;
}

datum.centered {
    margin: auto;
}

datum {
    box-sizing: border-box;
    display: inline-block;
    border-collapse: collapse;
    vertical-align: top;
    margin-bottom: 25px;
    font-size: 14px;

    // For debugging purposes only
    // border-style: solid;
    // border-width: 1px;
    // border-color: red;
    // border-radius: 5px;


    note {
        font-size:9px;
        display: inline-block;
    }

    .simplified::after {
        content: "*";
        position: relative;
        top: -7px;
        font-size: 12px;
    }

    name {
        font-size: 15px;
        text-align: left;
        display: block;
    }

    .nogrow {
        position: absolute;
    }

    .hidden {
        visibility: hidden;
    }


    visual {
        text-align: center;
        // background-color: salmon;
        background-color: #f2f2f2;
        border-style: solid;
        border-width: 1px;
        border-color: darkgray;
        border-radius: 5px;
        display: block;
        padding: 5px;
    }

    visual.empty {
        opacity: 0.4;
        border-style: dashed;
    }


    .bytes {
        background-color: lightgreen;
    }

    .char {
        background-color: sandybrown;
    }

    .sized {
        background-color: cyan;
    }

    .atomic {
        background-color: mediumseagreen;
    }

    .float {
        background-color: orchid;
    }

    .ptr {
        background-color: lightskyblue;
    }

    .any {
        background-color: salmon;
    }

    .cell {
        background-color: gold;
    }

    .platformdefined {
        background-color:lightgrey;
        border-style: dashed;
        border-width: 2px;
        border-color: darkblue;
    }

    .celled {
        // background-color: gold;
        border-style: solid;
        box-sizing: border-box;
        border-width: 4px;
        border-color: gold;
        // box-shadow:0px 0px 0px 4px inset gold;
    }


    .atomicx {
        // background-color: gold;
        border-style: solid;
        box-sizing: border-box;
        border-width: 4px;
        border-color: mediumseagreen;
        // box-shadow:0px 0px 0px 4px inset gold;
    }


    .enum {
        background-color: lightgoldenrodyellow;
    }

    .t {
        background-color: salmon;
        width: 30px;
    }

    .unsized::before {
        content: " ←";
        padding-left: 2px;
    }

    .unsized::after {
        content: "→ ";
        padding-right: 2px;
    }

    byte {
        display: inline-block;
        // background-color: mistyrose;
        border-style: dashed;
        border-width: 1px;
        border-color: black;
        border-radius: 5px;
        width: 15px;
        height: 28px;
    }

    word {
        display: inline-block;
        // background-color: mistyrose;
        border-style: dashed;
        border-width: 1px;
        border-color: black;
        border-radius: 5px;
        width: 30px;
        height: 28px;
    }


    byte.sign::after {
        content: "±";
        // display: block;
        position: relative;
        top: -6px;
        left: -3px;
        font-size: 10px;
    }

    zoom {
        background-color: cornsilk;
        display: block;
        border-style: solid;
        border-width: 1px;
        border-color: gray;
        position: relative;
        text-align: center;
        width: 106%;
        left: -3%;
        top: -2px;
        z-index: -100;
        font-size: 12px;
    }

    bit {
        margin: 0px;
        padding: 0px;
    }

    memory-entry {
        display: inline-block;
        vertical-align: top;
        position:relative;
        width: 80px;
    }

    memory-entry.double {
        width: 180px;
        // left:-40px;
    }

    memory-entry.quad {
        width: 300px;
        left:0px;
    }


    memory.extrapadding {
        padding-bottom: 15px;
    }

    memory {
        display: inline-block;
        padding: 5px;
        padding-bottom: 14px;
        font-size: 120%;
        text-align: center;
        position: relative;
        border-style: dashed;
        border-radius: 5px;
        border-width: 1px;
        border-color: gray;
        width: 80%;
        left: 5%;
        top: 5px;
        z-index: 100;
        margin-bottom: 10px;
        opacity: 0.4;
    }

    memory.heap {
        background-color: #c6dbe7;
    }

    memory.anymem {
        background-color: rgb(253, 236, 220);
    }

    memory.static {
        background-color: burlywood;
    }

    memory.static-vtable {
        background-color: burlywood;
    }

    memory.anymem::after {
        content: "(any mem)";
        display: block;
        position: absolute;
        bottom: 0px;
        right: 2px;
        font-size: 9px;
    }

    memory.heap::after {
        content: "(heap)";
        display: block;
        position: absolute;
        bottom: 0px;
        right: 2px;
        font-size: 9px;
    }


    memory.static::after {
        content: "(static)";
        display: block;
        position: absolute;
        bottom: 0px;
        right: 2px;
        font-size: 9px;
    }

    memory.static-vtable::after {
        content: "(static vtable)";
        display: block;
        position: absolute;
        bottom: 0px;
        right: 2px;
        font-size: 9px;
    }


    description {
        display: block;
        word-wrap: break-word;
        font-size: 10px;
    }


    pad {
        background-color: lightgreen;
        border-style: dotted;
        border-width: 1px;
        border-radius: 0px;
        border-color: black;

        // Needed to suppress iOS font rendering over border
        padding-bottom: 2px;

    }

    andor {
        display: block;
        text-align: center;
        font-size: 10px;
    }

    framed {
        display: inline-block;
        border-style: solid;
        border-width: 1px;
        border-color: black;

        // Needed to suppress iOS font rendering over border
        padding-bottom: 1px;

    }

    capacity {
        position:absolute;
        width:100%;
        left:-4px;
        bottom: -4px;
    }


    code {
        display: table-column;
        background-color: inherit !important;
        text-align: center !important;
        vertical-align: middle;
        text-shadow: 0em 0em !important;
    }

    ptr {
        display: inline-block;
        width: 80px;
        background-color: lightskyblue;
    }

    payload {
        display: inline-block;
        width: 80px;
        background-color: whitesmoke;
        border-style: dashed;
        border-width: 1px;
        border-color: black;
        border-radius: 5px;
    }


    .unsafe {
        position: relative;
        top: -3px;
        border-style: solid;
        border-width: 3px;
        border-color: red;
    }

   sized {
        background-color: cyan;
        display: inline-block;
        width: 80px;
    }

    bitgroup {
        border-style: solid;
        border-width: 1px;
        border-color: black;
        padding: 2px;
    }

    memory-link {
        display: block;
        position: absolute;
        top: -8px;
        height: 7px;
        font-size: 10px;
        border-width: 1px;
        border-color: gray;
        z-index: -50;
    }


    sub {
        font-size: 50%;
    }

    tr.vtable {
        border: 1px hsl(0, 0%, 95%) solid;
        background: inherit !important;
    }

}



spacer {
    display: inline-block;
    width: 15px;
    height: 10px;
}